/*
** Pattern_method_definition.h
** 
** Made by Michael DuPont
** Login   <mdupont@mdupontdesktop2>
** 
** Started on  Fri Mar  6 07:11:56 2009 Michael DuPont
** Last update Fri Mar  6 07:11:56 2009 Michael DuPont
*/

#ifndef   	PATTERN_METHOD_DEFINITION_H_
# define   	PATTERN_METHOD_DEFINITION_H_

class Pattern_method_definition : public Pattern
{
public:
  bool match(Statement* that); 
  void generate_code (Generate_C* gen);

protected:
  Wildcard<Method>* pattern;
  Signature* signature;
  
 protected:
  void debug_argument_stack();
  
  void method_entry(Generate_C* gen);
  
  void method_exit();
};


#endif 	    /* !PATTERN_METHOD_DEFINITION_H_ */
